package com.free.fs.service;

import com.free.fs.model.FilePojo;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * 公共文件服务接口
 *
 * @author dinghao
 * @date 2024/01/01
 */
public interface PublicFileService {

    /**
     * 获取文件列表
     *
     * @param path 目录路径
     * @return
     */
    List<FilePojo> getFileList(String path);

    /**
     * 根据文件ID下载文件
     *
     * @param fileId 文件ID
     * @param fileName 自定义文件名（可选）
     * @param response
     */
    void downloadFile(Long fileId, String fileName, HttpServletResponse response);

    /**
     * 根据文件路径下载文件
     *
     * @param filePath 文件路径
     * @param fileName 自定义文件名（可选）
     * @param response
     */
    void downloadByPath(String filePath, String fileName, HttpServletResponse response);

    /**
     * 获取软件分类列表
     *
     * @return
     */
    List<FilePojo> getSoftwareCategories();
}
